home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.3 Development Libraries / SGI IRIX 6.3 Development Libraries.iso / dist6.3 / gl_dev.idb / usr / include / GL / glxtokens.h.z / glxtokens.h
Encoding:
C/C++ Source or Header  |  1996-12-06  |  6.7 KB  |  199 lines

  1. /*
  2. ** Copyright 1991-1993, Silicon Graphics, Inc.
  3. ** All Rights Reserved.
  4. ** 
  5. ** This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
  6. ** the contents of this file may not be disclosed to third parties, copied or
  7. ** duplicated in any form, in whole or in part, without the prior written
  8. ** permission of Silicon Graphics, Inc.
  9. ** 
  10. ** RESTRICTED RIGHTS LEGEND:
  11. ** Use, duplication or disclosure by the Government is subject to restrictions
  12. ** as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
  13. ** and Computer Software clause at DFARS 252.227-7013, and/or in similar or
  14. ** successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
  15. ** rights reserved under the Copyright Laws of the United States.
  16. */
  17.  
  18. #ifndef __GLXTOKENS
  19. #define __GLXTOKENS
  20.  
  21. #ifdef __cplusplus
  22. extern "C" {
  23. #endif
  24.  
  25. /* Visual Config Attributes (XVisualInfo or GLXFBConfigSGIX) */
  26. #define GLX_USE_GL        1    /* support GLX rendering */
  27. #define GLX_BUFFER_SIZE        2    /* depth of the color buffer */
  28. #define GLX_LEVEL        3    /* level in plane stacking */
  29. #define GLX_RGBA        4    /* true if RGBA mode */
  30. #define GLX_DOUBLEBUFFER    5    /* double buffering supported */
  31. #define GLX_STEREO        6    /* stereo buffering supported */
  32. #define GLX_AUX_BUFFERS     7    /* number of aux buffers */
  33. #define GLX_RED_SIZE        8    /* number of red component bits */
  34. #define GLX_GREEN_SIZE        9    /* number of green component bits */
  35. #define GLX_BLUE_SIZE        10    /* number of blue component bits */
  36. #define GLX_ALPHA_SIZE        11    /* number of alpha component bits */
  37. #define GLX_DEPTH_SIZE        12    /* number of depth bits */
  38. #define GLX_STENCIL_SIZE    13    /* number of stencil bits */
  39. #define GLX_ACCUM_RED_SIZE    14    /* number of red accum bits */
  40. #define GLX_ACCUM_GREEN_SIZE    15    /* number of green accum bits */
  41. #define GLX_ACCUM_BLUE_SIZE    16    /* number of blue accum bits */
  42. #define GLX_ACCUM_ALPHA_SIZE    17    /* number of alpha accum bits */
  43. #define GLX_SAMPLES_SGIS        100000    /* number of samples per pixel */
  44. #define GLX_SAMPLE_BUFFERS_SGIS        100001    /* the number of multisample buffers */
  45. #define GLX_VISUAL_CAVEAT_EXT        0x20    /* visual_rating extension type */
  46. #define GLX_X_VISUAL_TYPE_EXT        0x22    /* visual_info extension type */
  47. #define GLX_TRANSPARENT_TYPE_EXT    0x23    /* visual_info extension */
  48. #define GLX_TRANSPARENT_INDEX_VALUE_EXT    0x24    /* visual_info extension */
  49. #define GLX_TRANSPARENT_RED_VALUE_EXT    0x25    /* visual_info extension */
  50. #define GLX_TRANSPARENT_GREEN_VALUE_EXT    0x26    /* visual_info extension */
  51. #define GLX_TRANSPARENT_BLUE_VALUE_EXT    0x27    /* visual_info extension */
  52. #define GLX_TRANSPARENT_ALPHA_VALUE_EXT    0x28    /* visual_info extension */
  53.  
  54. /* FBConfig Attributes */
  55. #define GLX_DRAWABLE_TYPE_SGIX        0x8010
  56. #define GLX_RENDER_TYPE_SGIX        0x8011
  57. #define GLX_X_RENDERABLE_SGIX        0x8012
  58. #define GLX_FBCONFIG_ID_SGIX        0x8013
  59. #define GLX_MAX_PBUFFER_WIDTH_SGIX    0x8016
  60. #define GLX_MAX_PBUFFER_HEIGHT_SGIX    0x8017
  61. #define GLX_MAX_PBUFFER_PIXELS_SGIX    0x8018
  62. #define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX    0x8019
  63. #define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX    0x801A
  64.  
  65. /*
  66. ** Error return values from glXGetConfig.  Success is indicated by
  67. ** a value of 0.
  68. */
  69. #define GLX_BAD_SCREEN        1    /* screen # is bad */
  70. #define GLX_BAD_ATTRIBUTE    2    /* attribute to get is bad */
  71. #define GLX_NO_EXTENSION    3    /* no glx extension on server */
  72. #define GLX_BAD_VISUAL        4    /* visual # not known by GLX */
  73. #define GLX_BAD_CONTEXT        5
  74. #define GLX_BAD_VALUE        6
  75. #define GLX_BAD_ENUM        7
  76.  
  77. /*
  78. ** Errors.
  79. */
  80. #define GLXBadContext           0
  81. #define GLXBadContextState      1
  82. #define GLXBadDrawable          2
  83. #define GLXBadPixmap            3
  84. #define GLXBadContextTag        4
  85. #define GLXBadCurrentWindow     5
  86. #define GLXBadRenderRequest     6
  87. #define GLXBadLargeRequest      7
  88. #define GLXUnsupportedPrivateRequest    8
  89. #define GLXBadFBConfigSGIX      9
  90. #define GLXBadPbufferSGIX       10
  91.  
  92. #define __GLX_NUMBER_ERRORS 8
  93. #define __GLX_NUMBER_EVENTS 17
  94.  
  95. /*****************************************************************************/
  96.  
  97. #define GLX_EXTENSION_NAME      "GLX"
  98. #define GLX_EXTENSION_ALIAS     "SGI-GLX"
  99.  
  100. #define GLX_VENDOR        1
  101. #define GLX_VERSION        2
  102. #define GLX_EXTENSIONS        3
  103.  
  104. /*****************************************************************************/
  105.  
  106. /*
  107. ** GLX Extension Strings
  108. */
  109. #define GLX_EXT_import_context        1
  110. #define GLX_EXT_visual_info        1
  111. #define GLX_EXT_visual_rating        1
  112. #define GLX_SGI_make_current_read    1
  113. #define GLX_SGI_swap_control        1
  114. #define GLX_SGI_video_sync        1
  115. #define GLX_SGIS_multisample        1
  116. #define GLX_SGIX_fbconfig        1
  117. #define GLX_SGIX_pbuffer        1
  118. #define GLX_SGIX_video_source        1
  119. #define GLX_SGIX_dm_pbuffer        1
  120.  
  121. /* Visual Ratings */
  122. #define GLX_NONE_EXT            0x8000
  123. #define GLX_SLOW_VISUAL_EXT        0x8001
  124. #define GLX_NON_CONFORMANT_VISUAL_EXT    0x800D
  125.  
  126. /* X Visual Types */
  127. #define GLX_TRUE_COLOR_EXT        0x8002
  128. #define GLX_DIRECT_COLOR_EXT        0x8003
  129. #define GLX_PSEUDO_COLOR_EXT        0x8004
  130. #define GLX_STATIC_COLOR_EXT        0x8005
  131. #define GLX_GRAY_SCALE_EXT        0x8006
  132. #define GLX_STATIC_GRAY_EXT        0x8007
  133.  
  134. /* Transparent Pixel Types */
  135. /*      GLX_NONE_EXT */
  136. #define GLX_TRANSPARENT_RGB_EXT        0x8008
  137. #define GLX_TRANSPARENT_INDEX_EXT    0x8009
  138.  
  139. /* Context Info Attributes */
  140. #define GLX_SHARE_CONTEXT_EXT        0x800A    /* id of share context */
  141. #define GLX_VISUAL_ID_EXT        0x800B    /* id of context's visual */
  142. #define GLX_SCREEN_EXT            0x800C    /* screen number */
  143.  
  144. /* FBConfig Drawable Type Bits */
  145. #define GLX_WINDOW_BIT_SGIX        0x00000001
  146. #define GLX_PIXMAP_BIT_SGIX        0x00000002
  147. #define GLX_PBUFFER_BIT_SGIX        0x00000004
  148.  
  149. /* FBConfig Render Type Bits */
  150. #define GLX_RGBA_BIT_SGIX        0x00000001
  151. #define GLX_COLOR_INDEX_BIT_SGIX    0x00000002
  152.  
  153. /* Render Types */
  154. #define GLX_RGBA_TYPE_SGIX        0x8014
  155. #define GLX_COLOR_INDEX_TYPE_SGIX    0x8015
  156.  
  157. /* Pbuffer Attributes */
  158. #define GLX_PRESERVED_CONTENTS_SGIX    0x801B
  159. #define GLX_LARGEST_PBUFFER_SGIX    0x801C
  160. #define GLX_WIDTH_SGIX            0x801D
  161. #define GLX_HEIGHT_SGIX            0x801E
  162. #define GLX_EVENT_MASK_SGIX        0x801F
  163. #define GLX_DIGITAL_MEDIA_PBUFFER_SGIX    0x8024
  164.  
  165. /* Event Selection Masks */
  166. #define GLX_BUFFER_CLOBBER_MASK_SGIX    0x08000000
  167.  
  168. /* Event Classes */
  169. #define GLX_DAMAGED_SGIX         0x8020
  170. #define GLX_SAVED_SGIX            0x8021
  171.  
  172. /* Event Drawable Types */
  173. #define GLX_WINDOW_SGIX            0x8022
  174. #define GLX_PBUFFER_SGIX        0x8023
  175.  
  176. /* Event Buffer Types */
  177. #define GLX_FRONT_LEFT_BUFFER_BIT_SGIX    0x00000001
  178. #define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX    0x00000002
  179. #define GLX_BACK_LEFT_BUFFER_BIT_SGIX    0x00000004
  180. #define GLX_BACK_RIGHT_BUFFER_BIT_SGIX    0x00000008
  181. #define GLX_AUX_BUFFERS_BIT_SGIX    0x00000010
  182. #define GLX_DEPTH_BUFFER_BIT_SGIX    0x00000020
  183. #define GLX_STENCIL_BUFFER_BIT_SGIX    0x00000040
  184. #define GLX_ACCUM_BUFFER_BIT_SGIX    0x00000080
  185. #define GLX_SAMPLE_BUFFERS_BIT_SGIX    0x00000100
  186.  
  187. /* Event Numbers */
  188. #define GLX_BufferClobberSGIX        16
  189.  
  190. /* Video Resize */
  191. #define GLX_SYNC_FRAME_SGIX         0x00000000 
  192. #define GLX_SYNC_SWAP_SGIX         0x00000001 
  193.  
  194. #ifdef __cplusplus
  195. }
  196. #endif
  197.  
  198. #endif /* __GLXTOKENS */
  199.